export default {
    namespace: 'products', //表示全局 state上的 key
    state: [], //是初始值
    reducers: { //等同于 redux里的 reducer,它是一个纯函数,用于处理同步操作,是唯一可以修改state的地方,由action触发,有state和action两个参数,同步更新state
        'delete'(state, { payload: id }) {
            return state.filter(item => item.id !== id);
        },
    },
    effects:{ 
        // 用于处理异步操作，不能直接修改state,由action触发,也可以触发action. 他只能是generator 函数,并且有action和 effects两个参数。
        // 第二个参数包含 put 、call 和 select 三个字段 , put 用于触发action ,call 用于调用异步处理逻辑 ,select 用于从state 中获取数据

    },
    subscriptions: {
       //用于订阅某些数据源，并根据情况 dispatch 某些 action，格式为 ({ dispatch, history }, done) => unlistenFunction。
    },
};